import { createRouter, createWebHashHistory, createWebHistory } from 'vue-router'

const router = createRouter({
  // history模式,需要该服务器的配置,适用性没有 hash 模式强
  // history: createWebHistory(import.meta.env.BASE_URL),
  // URL 不是那么美观 /#xxx ,web组件中用户看不到,问题不大
  history: createWebHashHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/',
      redirect: '/profile',
    },
    {
      path: '/profile',
      component: () => import('../views/ProfileEdit.vue'),
      meta: { title: '个人资料' },
    },
    {
      path: '/address',
      component: () => import('../views/AddressManager.vue'),
      meta: { title: '地址列表' },
    },
    {
      path: '/address/edit/:id?',
      component: () => import('../views/AddressEdit.vue'),
      meta: { title: '地址管理' },
    },
  ],
})

// 路由的 生命周期钩子
// 路由切换完毕之后执行
router.afterEach((to) => {
  // 修改标题,配置在路由表中的 meta 下面的 title 属性设置给标题
  document.title = to.meta.title as string
})

export default router
